System and method for providing customer service help

ABSTRACT

Systems, methods, and computer-readable storage media for providing customer service help. The system first receives, from a user device, contact information associated with the user device, wherein the contact information is received via a customer service terminal having a user interface configured to wirelessly receive data from the user device when the user device is within a distance of the customer service terminal. In response to receiving the contact information, the system then identifies a customer service representative associated with the customer service terminal. The system then sends the contact information to a remote device associated with the customer service representative. The customer service representative can then initiate a customer service communication between the user device and the remote device in order to provide customer service help to the user associated with the user device.

BACKGROUND

1. Technical Field

The present disclosure relates to customer service terminals, and morespecifically to customer service terminals for directing customerservice representatives to a user's mobile device.

2. Introduction

Self-service kiosks are often provided in retail service establishmentsto allow customers to quickly and easily obtain service, and tofacilitate customer transactions. Kiosks may be used to provide userswith information relating to product or service availability. Forexample, kiosks can provide information relating to products availablefor in-store purchase in a retail setting, available seating or flightinformation in an airport, or location and contact information for usersseeking directory information, such as directions to business (e.g.,hotels) and phone numbers in user directories. Kiosks can additionallybe used at retail establishments to allow customers to check the priceof a product. For example, a retail establishment may provide kiosksthat allow users to scan a product to view the product's price.

Self-service kiosks can also provide users with ways to contact aservice representative for help. For example, self-service kiosks canallow a customer to initiate a customer service call from theself-service kiosk. Alternatively, self-service kiosks can directcustomers to a web-based setting where the customer can navigate throughweb-based content relating to the desired customer service inquiry.However, the current self-service kiosks and implementations requirecustomers to remain at the self-service kiosk and even enter, manually,detailed information about the customer and the service inquiry in orderto conduct a customer service transaction. Yet this process can beinefficient and undesirable for the customer.

SUMMARY

Additional features and advantages of the disclosure will be set forthin the description which follows, and in part will be obvious from thedescription, or can be learned by practice of the herein disclosedprinciples. The features and advantages of the disclosure can berealized and obtained by means of the instruments and combinationsparticularly pointed out in the appended claims. These and otherfeatures of the disclosure will become more fully apparent from thefollowing description and appended claims, or can be learned by thepractice of the principles set forth herein.

The approaches disclosed herein can be used to implement a call-backsystem to provide customer service to users. The call-back system allowsusers to quickly and easily obtain customer service right from theirmobile phone. This way, the user can receive customer service whilefreely moving around, if desired, and without having to remain at aspecific location. When a user needs customer service, he or she cansimply take his or her mobile phone to a nearby customer serviceterminal, and the customer service terminal can automatically receive orretrieve the user's mobile phone number from the mobile phone, andprovide the phone number to an agent to allow the agent to contact theuser at the user's mobile phone. The customer service terminal canreceive or retrieve the user's phone number from the mobile phone whenthe mobile phone is within a range of the customer service terminal.Thus, to initiate a customer service transaction, the user is notrequired to enter his or her phone number, navigate a form, or enterdetailed information, as the customer service terminal can automaticallyreceive or retrieve the user's phone number from the mobile phone, andinstruct an agent to call the user's mobile phone to provide customerservice to the user.

For example, if a user has a question about a wrench in a store's toolsaisle, he or she can walk towards a customer service terminal located inthe tools aisle, and have the customer service terminal automaticallyreceive or retrieve the user's mobile phone number from the user'smobile phone. The customer service terminal can then provide the user'smobile phone number to an agent, which can then call the user at theuser's mobile phone number to establish a customer service transactionwith the user.

When the agent receives the user's mobile phone number from the customerservice terminal, he or she can also infer the user's location based onthe customer service terminal's location, as the agent knows that theuser's mobile phone is within a range of the customer service terminal.Knowing the user's location, the agent may also be able to infer theuser's customer service context. For example, if an agent in a retailenvironment receives a user's mobile phone number from a customerservice terminal located in the tools aisle, the agent may be able toinfer that the user's service inquiry is related to tools. The inferredcontext information can include a topic, a product, a question, astatus, a degree of urgency, an intent, a setting, a circumstance, asubject, a question complexity, an expectation, an activity, etc. Thisinformation can help direct the user's customer service inquiry to theproper agent, and provide the agent with background and/or relevantinformation regarding the user's customer service inquiry.

Disclosed are systems, methods, and non-transitory computer-readablestorage media for providing customer service help to users. The systemfirst receives, from a user device, contact information associated withthe user device. The system can be, for example, a terminal, an endcap,a wireless device, a computer, a kiosk, etc. The system can receive thecontact information wirelessly from the user device. Moreover, thesystem can receive the contact information via an interface configuredto wirelessly receive data from the user device when the user device iswithin a distance of the system. The interface can be, for example, anear field communication (NFC) interface, a Bluetooth interface, a radiointerface, etc. In some embodiments, the system can detect the userdevice when the user device is within a wireless range and automaticallyretrieve and/or receive the contact information from the user device. Inother embodiments, the system can include a camera for scanninginformation, including contact information, from the user device. Forexample, the system can use the camera to scan a machine-readable code,such as a quick response (QR) code, from the user device. Themachine-readable code can be scanned to extract contact information,product information, and/or any additional information.

The user device can be any mobile device, such as a mobile phone, atablet computer, a laptop, etc. The contact information can be a phonenumber, an email address, an instant messaging address, a subscriberidentity, a username, an ICC ID, a Bluetooth address, a Wi-Fi address, anetwork address, a media access control, a session initiation protocoluniform resource identifier, and/or any other type of contact address,number, and/or identifier. The contact information can also include aname, an address, a title, a profile, a resource location, a networkname, an identifier, an alias, a customer identifier, a productidentifier, a serial number, etc. Moreover, the contact information canalso include additional information, such as status information,location information, call-back information, inquiry information,context information, customer information, product information, carrierinformation, a date, a time, etc.

Next, in response to receiving the contact information, the systemidentifies a customer service representative associated with the system.The system identifies the customer service representative in order todetermine which agent is to receive the contact information and/orprovide support to the user associated with the user device. In someembodiments, the system is configured for, matched to, and/or associatedwith a specific customer service representative. Here, the system cansimply identify which customer service representative it is associatedwith, or receive, from a server, an indication identifying a specificcustomer service representative, for example. In other embodiments, thesystem can identify a specific customer service representative from agroup of customer service representatives. For example, the system canidentify a specific customer service representative from variouscustomer service representatives associated with the system. The systemcan select the specific customer service representative from the groupbased on a location associated with the system, the contact information,a time and/or date it received the contact information, a mapping ofagents-to-terminals, the user device associated with the contactinformation, a product, a topic, etc. The system can also identify thecustomer service representative from the group based on one or morerouting protocols, such as skills-based routing and dynamic routing, aswell as other factors, such as agent availability, agent workload, agentstatus, queue management factors. In some cases, the specific customerservice representative can select himself or herself from the group ofcustomer service representatives, and send an indication to the system,identifying himself or herself as the customer service representativefrom the group that should receive the contact information and/orprovide support to the user.

The system then sends the contact information to a remote deviceassociated with the customer service representative. For example, thesystem can send the contact information to the customer servicerepresentative's computer, smartphone, etc. In some embodiments, thesystem can send the contact information to a central server. The centralserver can maintain, route, forward, and/or manage the contactinformation received from the system. The information sent to the remotedevice can include contact information of one or more types, such as aphone number or an email address, as previously described. Theinformation sent to the remote device can also include additionalinformation, such as a customer name, a customer profile, a resourcelocation, a customer identifier, a product identifier, a serial number,location information, call-back information, inquiry information,context information, a date, a time, etc. The system can also send anindication to the remote device and/or a central server, with anotification that the user device should be contacted by the customerservice representative—or any other agent—based on the contactinformation.

In some embodiments, the system can then establish a communicationbetween the user device and the remote device (or another deviceassociated with the customer service representative). For example, thesystem can use the contact information to establish a telephone callbetween the user device and the customer service representative's mobilephone. As another example, the system can establish an instant messagingsession between the user device and the customer servicerepresentative's computer. In other embodiments, the customer servicerepresentative can receive the contact information, and initiate acommunication with the user device via the remote device or any otherdevice. For example, the customer service representative can receive thecontact information (either from the system, a server, or anotherdevice) at the remote device, and use the contact information to callthe user device. The customer service representative can call the userdevice from any device, such as a mobile phone, or the remote deviceitself In still other embodiments, the system can send the contactinformation to a server, which then connects a device associated withthe customer service representative with the user device to establish acommunication, using the contact information received/retrieved from theuser device.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to describe the manner in which the above-recited and otheradvantages and features of the disclosure can be obtained, a moreparticular description of the principles briefly described above will berendered by reference to specific embodiments thereof which areillustrated in the appended drawings. Understanding that these drawingsdepict only exemplary embodiments of the disclosure and are nottherefore to be considered to be limiting of its scope, the principlesherein are described and explained with additional specificity anddetail through the use of the accompanying drawings in which:

FIG. 1 illustrates an example system embodiment;

FIG. 2 illustrates an example configuration for providing service to auser;

FIG. 3 illustrates an example customer service terminal;

FIG. 4 illustrates an example environment for a service terminal; and

FIG. 5 illustrates an example method embodiment.

DETAILED DESCRIPTION

Various embodiments of the disclosure are described in detail below.While specific implementations are described, it should be understoodthat this is done for illustration purposes only. Other components andconfigurations may be used without parting from the spirit and scope ofthe disclosure.

The terms agent and customer service representative are usedinterchangeably herein, and can include a software agent and/or a humanagent. Moreover, the terms service and support are used interchangeablyherein to mean any type of service, support, help, response, and/orcommunication provided to a user.

The present disclosure addresses the need for convenient and efficientcustomer service. A system, method and computer-readable media aredisclosed which provide customer service to users at the user's mobiledevice. A brief introductory description of a basic general purposesystem or computing device in FIG. 1, which can be employed to practicethe concepts, is disclosed herein. A detailed description ofconfigurations and embodiments for providing customer service will thenfollow. These variations shall be described herein as the variousembodiments are set forth. The disclosure now turns to FIG. 1.

With reference to FIG. 1, an exemplary system 100 includes ageneral-purpose computing device 100, including a processing unit (CPUor processor) 120 and a system bus 110 that couples various systemcomponents including the system memory 130 such as read only memory(ROM) 140 and random access memory (RAM) 150 to the processor 120. Thesystem 100 can include a cache 122 of high speed memory connecteddirectly with, in close proximity to, or integrated as part of theprocessor 120. The system 100 copies data from the memory 130 and/or thestorage device 160 to the cache 122 for quick access by the processor120. In this way, the cache provides a performance boost that avoidsprocessor 120 delays while waiting for data. These and other modules cancontrol or be configured to control the processor 120 to perform variousactions. Other system memory 130 may be available for use as well. Thememory 130 can include multiple different types of memory with differentperformance characteristics. It can be appreciated that the disclosuremay operate on a computing device 100 with more than one processor 120or on a group or cluster of computing devices networked together toprovide greater processing capability. The processor 120 can include anygeneral purpose processor and a hardware module or software module, suchas module 1 162, module 2 164, and module 3 166 stored in storage device160, configured to control the processor 120 as well as aspecial-purpose processor where software instructions are incorporatedinto the actual processor design. The processor 120 may essentially be acompletely self-contained computing system, containing multiple cores orprocessors, a bus, memory controller, cache, etc. A multi-core processormay be symmetric or asymmetric.

The system bus 110 may be any of several types of bus structuresincluding a memory bus or memory controller, a peripheral bus, and alocal bus using any of a variety of bus architectures. A basicinput/output (BIOS) stored in ROM 140 or the like, may provide the basicroutine that helps to transfer information between elements within thecomputing device 100, such as during start-up. The computing device 100further includes storage devices 160 such as a hard disk drive, amagnetic disk drive, an optical disk drive, tape drive or the like. Thestorage device 160 can include software modules 162, 164, 166 forcontrolling the processor 120. Other hardware or software modules arecontemplated. The storage device 160 is connected to the system bus 110by a drive interface. The drives and the associated computer-readablestorage media provide nonvolatile storage of computer-readableinstructions, data structures, program modules and other data for thecomputing device 100. In one aspect, a hardware module that performs aparticular function includes the software component stored in a tangiblecomputer-readable storage medium in connection with the necessaryhardware components, such as the processor 120, bus 110, display 170,and so forth, to carry out the function. In another aspect, the systemcan use a processor and computer-readable storage medium to storeinstructions which, when executed by the processor, cause the processorto perform a method or other specific actions. The basic components andappropriate variations are contemplated depending on the type of device,such as whether the device 100 is a small, handheld computing device, adesktop computer, or a computer server.

Although the exemplary embodiment described herein employs the hard disk160, other types of computer-readable media which can store data thatare accessible by a computer, such as magnetic cassettes, flash memorycards, digital versatile disks, cartridges, random access memories(RAMs) 150, read only memory (ROM) 140, a cable or wireless signalcontaining a bit stream and the like, may also be used in the exemplaryoperating environment. Tangible computer-readable storage mediaexpressly exclude media such as energy, carrier signals, electromagneticwaves, and signals per se.

To enable user interaction with the computing device 100, an inputdevice 190 represents any number of input mechanisms, such as amicrophone for speech, a touch-sensitive screen for gesture or graphicalinput, keyboard, mouse, motion input, speech and so forth. An outputdevice 170 can also be one or more of a number of output mechanismsknown to those of skill in the art. In some instances, multimodalsystems enable a user to provide multiple types of input to communicatewith the computing device 100. The communications interface 180generally governs and manages the user input and system output. There isno restriction on operating on any particular hardware arrangement andtherefore the basic features here may easily be substituted for improvedhardware or firmware arrangements as they are developed.

For clarity of explanation, the illustrative system embodiment ispresented as including individual functional blocks including functionalblocks labeled as a “processor” or processor 120. The functions theseblocks represent may be provided through the use of either shared ordedicated hardware, including, but not limited to, hardware capable ofexecuting software and hardware, such as a processor 120, that ispurpose-built to operate as an equivalent to software executing on ageneral purpose processor. For example the functions of one or moreprocessors presented in FIG. 1 may be provided by a single sharedprocessor or multiple processors. (Use of the term “processor” shouldnot be construed to refer exclusively to hardware capable of executingsoftware.) Illustrative embodiments may include microprocessor and/ordigital signal processor (DSP) hardware, read-only memory (ROM) 140 forstoring software performing the operations described below, and randomaccess memory (RAM) 150 for storing results. Very large scaleintegration (VLSI) hardware embodiments, as well as custom VLSIcircuitry in combination with a general purpose DSP circuit, may also beprovided.

The logical operations of the various embodiments are implemented as:(1) a sequence of computer implemented steps, operations, or proceduresrunning on a programmable circuit within a general use computer, (2) asequence of computer implemented steps, operations, or proceduresrunning on a specific-use programmable circuit; and/or (3)interconnected machine modules or program engines within theprogrammable circuits. The system 100 shown in FIG. 1 can practice allor part of the recited methods, can be a part of the recited systems,and/or can operate according to instructions in the recited tangiblecomputer-readable storage media. Such logical operations can beimplemented as modules configured to control the processor 120 toperform particular functions according to the programming of the module.For example, FIG. 1 illustrates three modules Mod1 162, Mod2 164 andMod3 166 which are modules configured to control the processor 120.These modules may be stored on the storage device 160 and loaded intoRAM 150 or memory 130 at runtime or may be stored in othercomputer-readable memory locations.

Having disclosed some components of a computing system, the disclosurenow turns to FIG. 2, which illustrates an example configuration 200 forproviding service to a user. Here, agent 208A can provide service touser 204A via a communication between the user's mobile device 204B andthe agent's device 208B. When user 204A needs to obtain service, he orshe can take mobile device 204B within a range of terminal 206, toenable an exchange of contact information between the mobile device 204Band the terminal 206, as further detailed below. The terminal 206 canthen transmit the contact information from the mobile device 204B to theremote device 208B, via network 202. The agent 208A can obtain thecontact information from the remote device 208B, and use the contactinformation to contact the user 204A at the mobile device 204B, in orderto provide service to the user 204A. The agent 208A can contact the user204A via network 210. For example, the agent 208A can establish atelephone call with user 204A via network 210. In this example, network210 can be a telephone network, such as a public switched telephonenetwork. As another example, the agent 208A can establish a video callwith user 204A via network 210. Here, the network 210 can be a packetswitched network, for example. In some embodiments, the agent 208A canestablish a communication with the user 204A via network 202 and/ornetwork 210. Indeed, in some cases, network 202 and network 210 can bethe same network. Moreover, the network 202 and/or the network 210 caninclude a public network, such as the Internet, but can also include aprivate or quasi-private network, such as an intranet, a home network, avirtual private network (VPN), a shared collaboration network betweenseparate entities, etc. Indeed, the principles set forth herein can beapplied to many types of networks, such as local area networks (LANs),virtual LANs (VLANs), corporate networks, wide area networks, andvirtually any other form of network.

Furthermore, the agent 208A can infer the location of the mobile device204B, based on the location of the terminal 206. This can also allow theagent 208A to infer additional details about the servicerequested/required by the user 204A. For example, if the terminal 206 islocated within a particular department in an establishment, the agent208A may infer that the user 204A has an inquiry about products and/orservices associated with that specific department. The agent 208A canalso infer additional details about the service inquiry and/or thecontext of the user 204A based on the current date, the current time,the identity of the terminal 206, the identity of the user 204A, etc.For example, the terminal 206 can be designated for a specific set ofproduct and/or service inquiries. Accordingly, the agent 208A can inferthat the inquiry is related to the set of product and/or serviceinquiries, based on the identity of the terminal 206, as the agent 208Aknows that the terminal 206 is to be used for those specific productand/or service inquiries.

The terminal 206 can be a customer service terminal, an endcap, a kiosk,a computer, etc. In fact, the terminal 206 can be any device withnetworking capabilities. As previously mentioned, the terminal 206 canautomatically receive or retrieve contact information, such as the phonenumber of the mobile device 204B, when the mobile device 204B is withina range. The range can depend on the configuration of the terminal 206.For example, the terminal 206 can be configured to receive/retrieve datafrom mobile devices using NFC. In this case, the range can beapproximately 2 to 4 cm. With NFC, the close range communication betweenthe mobile device 204B and the terminal 206 can take place via magneticfield induction. The terminal 206 can also be configured to retrievedata from mobile devices using a camera on the terminal 206 to scan thedata on the mobile devices. Here, the range can depend on thecapabilities of the camera. One of ordinary skill in the art willreadily understand, after reading this disclosure, the possible rangesfor scanning information from a camera. The terminal 206 can also beconfigured to receive or retrieve the data from mobile devices using anyother wireless configurations, such as Wi-Fi or Bluetooth, for example.One of ordinary skill in the art will readily understand, after readingthis disclosure, the possible ranges for receiving or retrieving datadepending on the specific wireless configuration implemented.

The contact information exchanged between the mobile device 204B and theterminal 206 can be automatic and/or initiated by the user 204A. In someembodiments, the terminal 206 and the mobile device 204B canautomatically connect to exchange information, including contactinformation, when both devices are within a wireless range. In otherembodiments, the user 204A can initiate the communication between themobile device 204B and the terminal 206. For example, the user 204A caninitiate the communication by pressing a button, executing a command,and/or modifying a setting at the mobile device 204B and/or the terminal206. As another example, the user 204A can initiate an exchange of databetween the mobile device 204B and the terminal 206 by placing themobile device 204B within a close distance of the terminal 206. Bymoving the mobile device 204B close to the terminal 206, the user 204Acan initiate a transfer of data via a wireless standard, such as NFC.

In still other embodiments, the user 204A can move the mobile device204B within a distance of a camera at the terminal 206, and initiate ascan of information at the mobile device 204B from the terminal 206. Thecamera at the terminal 206 can be used to scan data at the mobile device204B, in order to transfer the contact information to the terminal 206.The camera can scan, for example, a computer-readable code at the mobiledevice 204B containing the contact information, such as a QR code. Oncethe camera scans the computer-readable code, the terminal 206 cananalyze the code and extract the contact information and any other data,or forward the code to another device, such as a server, which can thenextract the contact information and any other data from it. Aspreviously mentioned, the distance between the mobile device 204B andthe camera at the terminal 206 necessary to scan the data can depend onthe capabilities and/or configuration of the camera.

Once the terminal 206 has obtained the contact information from themobile device 204B, it can transmit the contact information (and anyother information obtained from the mobile device 204B) to the remotedevice 208B via network 202, as previously explained. In some cases, theterminal 206 can also transmit the contact information to other devicesfor access by other agents. The remote device 208B can be any devicewith networking capabilities. In some embodiments, the remote device208B can be a server. The server can maintain the contact information toallow the agent 208A, and any other agents, access the contactinformation to contact the mobile device 204B. The server can alsoforward the contact information to one or more agent devices (i.e,devices used by agents and/or devices running software agents). In somecases, the remote device 208B can be configured to establish acommunication between the agent 208A and the user 204A via mobile device204B and the remote device 208B and/or another device, based on thecontact information. Here, the remote device 208B can receive thecontact information from the terminal 206 and automatically establish acommunication with the mobile device 206.

FIG. 3 illustrates an example customer service terminal 300. Thecustomer service terminal 300 can include an NFC interface 302 forexchanging information with other devices via NFC. The NFC interface 302can allow for short-range communication at relatively low data rates,such as 424 kb/s, and may comply with standards such as ISO 18092 or ISO21481. Short-range communications with the NFC interface 302 may occurvia magnetic field induction with other devices equipped to communicatevia NFC. In some cases, the short-range communications may have a rangeof approximately 2 to 4 cm. The customer service terminal 300 can alsoinclude an antenna 304 for wirelessly communicating with other devices.The antenna 304 can be, for example, a Bluetooth antenna and/or anetwork interface card (NIC), such as a NIC for communicating via aWi-Fi and/or an Ethernet connection. The customer service terminal 300can also include a camera 306. The camera 306 can be configured to scandata and/or codes stored on other devices, and/or capture images of thedata and/or codes stored on the other devices.

The customer service terminal 300 can include a display 308, such as anLED display, for displaying relevant information. For example, thedisplay 308 can display a status of the customer service terminal 300and/or a connection; a mode of communication; a progress of acommunication; a setting of a communication; an error; a prompt; asoftware button; an image; data captured, received, and/or retrieved bythe customer service terminal 300; etc. Moreover, the display 308 can bea touch screen configured to allow users to provide input by touch.Further, the display 308 can include a graphical user interface to allowusers to navigate settings and information, initiate tasks and commands,modify information and settings, input information, etc. The customerservice terminal 300 can also include a scan button 310 to scaninformation from other devices, and/or a send button 312 to transmitinformation received, scanned, and/or retrieved from other devices. Thesend button 312 can be configured to transmit the information via theantenna 304 to a remote device, such as a server, for example. The scanbutton 310 and/or the send button 312 can be physical buttons orsoftware buttons configured to execute a corresponding command. In someembodiments, the customer service terminal 300 can include additionalbuttons, such as navigation buttons, input buttons, control buttons,power buttons, etc. The customer service terminal 300 can also includespeakers, input devices, a processor, a battery, a power supply, amemory, a storage device, a database, a light, a sensor, a card reader,a GPS antenna, a modem, an adapter, a switch, a microphone, and/or anyother hardware component.

FIG. 4 illustrates an example environment 400 for a service terminal. Inthis example, the environment 400 is a retail environment. However, asone of ordinary skill in the art will readily recognize after readingthis disclosure, in other embodiments, the environment 400 can be anyother type of environment where service or support can be provided to auser through a service terminal. For example, the environment can be anairport, a gas station, a parking garage, a warehouse, a municipality, aschool, a factory, a business, a bus terminal, a building, a resort, ahospital, a train station, an apartment, an office, a park, a complex,etc.

The environment 400 includes aisles 402A-B with products, where user406A can browse and shop for the specific products in the aisles 402A-B.The aisles 402A-B can include terminals 404A-B, where the user 406A caninitiate a customer service transaction. The terminals 404A-B arelocated at the end of the aisles 402A-B. However, as one of ordinaryskill in the art will readily recognize after reading this disclosure,the terminals 404A-B can be located anywhere else in or near the aisles402A-B. For example, the terminals 404A-B can be placed next to specificproducts or categories of products within the aisles 402A-B. Moreover,the aisles 402A-B can include more or less terminals than illustrated inFIG. 4. For example, the aisles 402A-B can share a single terminal, oreach of the aisles 402A-B can have multiple terminals. In some cases, anaisle can have multiple sections of products, and a terminal can beplaced at each section within the aisle. Here, a terminal at a specificsection of products can correspond to a specific product(s) in thatspecific section of products. Also, one or more agents can be assignedto respond to inquiries initiating at a specific terminal, for example.

The products in the aisles 402A-B can be selected and/or organized in aspecific manner. In retail environments, products are typically sortedand/or organized by aisle, and each product is assigned to a specificaisle, at least for a specific period of time. This can help customersand agents identify, compare, and/or browse products in the retailenvironment. Products can be placed in specific aisles according toproduct categories, product brands, product prices, product dates,product similarities, product functionalities, product sales, productrelationships, aesthetic appearance, etc. However, in some cases, one ormore products can be randomly placed in, or selected for, specificaisles. The principles disclosed herein can be applied in environmentshaving aisles with products arranged, organized, displayed, selected,and/or sorted in any way, including randomly.

In FIG. 4, if the user 406A wants to initiate a serviceinquiry/transaction, she can do so from one of the terminals 404A-B. Forexample, the user 406A can go to terminal 404A and place her mobiledevice 406B within a close range of the terminal 404A to allow theterminal 404A to receive/extract the phone number of the mobile device406B, and provide the phone number to an agent who can call the user406A at the mobile device 406B to establish a service transaction. Thisway, the user 406A can quickly obtain service from an agent, right fromher mobile device 406B, without having to search from an agent, withouthaving to lookup the agent's contact information, without having to callthe agent, and without even having to manually input her contactinformation or fill a form. Thus, the process of obtaining the phonenumber of the user 406A and calling the user 406A at her mobile device406B for service can be automated for efficiency and convenience. Givenprivacy concerns by the user 406A, the information from the user 406Aand mobile device 406B is obtained with the consent, knowledge, and/orcontrol of the user 406A.

In some cases, the terminal 404A can provide the contact information toa server to maintain the contact information at a centralized location.The server can then forward the contact information, or analert/notification, to one or more agents. One or more agents can haveaccess to the contact information. The server can select which agentreceives the contact information and/or contacts the user 406A, or itcan allow the agents themselves to control who receives the contactinformation and/or contacts the user 406A. The server can also establisha call between the mobile device 406B and an agent.

In some embodiments, the user 406A can initiate a serviceinquiry/transaction by scanning her mobile phone number from theterminal 404A. For example, the user 406A can scan an image, text,and/or machine-readable code (e.g., QR code) on the mobile device 406Bvia a camera/scanner on the terminal 404A. The terminal 404A can thenextract the contact information from the scan and forward the contactinformation to a server and/or one or more agents. Alternatively, theterminal 404A can forward the scan to a server and/or one or moreagents, and the server and/or agents can then extract the contactinformation from the scan. For example, the user can show an image,text, machine readable code on their mobile device display then hold uptheir mobile device to a scanner on the terminal which scans the imageon the device to extract the contact information.

In some embodiments, the terminals 404A-B can display a machine-readablecode, such as a QR code, which the user 406A can scan from the mobiledevice 406B to obtain service. When the user 406A scans themachine-readable code, the machine-readable code can direct a browser onthe mobile device 406B to a web page for obtaining service. The web pagecan include a form that the user 406A can submit to a server as part ofher service inquiry. In some cases, the web page can execute code toautomatically extract the phone number of the mobile device 406B andforward the phone number to a server and/or one or more agents. Here,when the browser on the mobile device 406B requests the web page fromthe web page's server, the request can trigger the execution of the codeto extract the phone number from the mobile device 406B. The code can beexecuted in the server side and/or on the local browser.

Having disclosed some basic system components and concepts, thedisclosure now turns to the exemplary method embodiment shown in FIG. 5.For the sake of clarity, the method is described in terms of anexemplary system 100, as shown in FIG. 1, configured to practice themethod. The steps outlined herein are exemplary and can be implementedin any combination thereof, including combinations that exclude, add, ormodify certain steps.

The system 100 first receives, from a user device, contact informationassociated with the user device (500). The system 100 can receive thecontact information wirelessly from the user device. Moreover, thesystem 100 can receive the contact information via an interfaceconfigured to wirelessly receive data from the user device when the userdevice is within a distance of the system 100. The interface can be, forexample, an NFC interface, a Bluetooth interface, a radio interface,etc. In some embodiments, the system 100 can detect the user device whenthe user device is within a wireless range and automatically retrieveand/or receive the contact information from the user device. In otherembodiments, the system 100 can include a camera for scanninginformation, including contact information, from the user device. Forexample, the system 100 can use the camera to scan a machine-readablecode, such as a QR code, from the user device. The machine-readable codecan be scanned to extract contact information, product information,and/or any additional information. In some embodiments, the user'sdevice can scan a code on the terminal as previously described inparagraph [0043], above.

The user device can be any mobile device, such as a mobile phone, atablet computer, a laptop, smart glasses, etc. The contact informationcan be a phone number, an email address, an instant messaging address, asubscriber identity, a username, an ICC ID, a Bluetooth address, a Wi-Fiaddress, a network address, a media access control, a session initiationprotocol uniform resource identifier, and/or any other type of contactaddress, number, and/or identifier. The contact information can alsoinclude a name, an address, a title, a profile, a resource location, anetwork name, an identifier, an alias, a customer identifier, a productidentifier, a serial number, etc. Moreover, the contact information canalso include additional information, such as status information,location information, call-back information, inquiry information,context information, customer information, product information, carrierinformation, a date, a time, etc.

Next, in response to receiving the contact information, the system 100identifies a customer service representative associated with the system100 (502). The system 100 identifies the customer service representativein order to determine which agent is to receive the contact informationand/or provide support to the user associated with the user device. Insome embodiments, the system 100 is configured for, matched to, and/orassociated with a specific customer service representative. Here, thesystem 100 can simply identify which customer service representative itis associated with, or receive, from a server, an indication identifyinga specific customer service representative, for example. In otherembodiments, the system 100 can identify a specific customer servicerepresentative from a group of customer service representatives. Forexample, the system 100 can identify a specific customer servicerepresentative from various customer service representatives associatedwith the system 100. The system 100 can select the specific customerservice representative from the group based on a location associatedwith the system 100, the contact information, a time and/or date itreceived the contact information, a mapping of agents-to-terminals, theuser device associated with the contact information, a product, a topic,etc. The system 100 can also identify the customer servicerepresentative from the group based on one or more routing protocols,such as skills-based routing and dynamic routing, as well as otherfactors, such as agent availability, agent workload, agent status, queuemanagement factors. In some cases, the specific customer servicerepresentative can select himself or herself from the group of customerservice representatives, and send an indication to the system 100,identifying himself or herself as the customer service representativefrom the group that should receive the contact information and/orprovide support to the user.

The system 100 then sends the contact information to a remote deviceassociated with the customer service representative (504). For example,the system 100 can send the contact information to the customer servicerepresentative's computer, smartphone, etc. In some embodiments, thesystem 100 can send the contact information to a central server. Thecentral server can maintain, route, forward, and/or manage the contactinformation received from the system 100. The information sent to theremote device can include contact information of one or more types, suchas a phone number or an email address, as previously described. Theinformation sent to the remote device can also include additionalinformation, such as a customer name, a customer profile, a resourcelocation, a customer identifier, a product identifier, a serial number,location information, call-back information, inquiry information,context information, a date, a time, etc. The system 100 can also sendan indication to the remote device and/or a central server, with anotification that the user device should be contacted by the customerservice representative—or any other agent—based on the contactinformation.

In some embodiments, the system 100 can then establish a communicationbetween the user device and the remote device (or another deviceassociated with the customer service representative). For example, thesystem 100 can use the contact information to establish a telephone callbetween the user device and the customer service representative's mobilephone. As another example, the system 100 can establish an instantmessaging session between the user device and the customer servicerepresentative's computer. In other embodiments, the customer servicerepresentative can receive the contact information, and initiate acommunication with the user device via the remote device or any otherdevice. For example, the customer service representative can receive thecontact information (either from the system 100, a server, or anotherdevice) at the remote device, and use the contact information to callthe user device. The customer service representative can call the userdevice from any device, such as a mobile phone, or the remote deviceitself. In still other embodiments, the system 100 can send the contactinformation to a server, which then connects a device associated withthe customer service representative with the user device to establish acommunication, using the contact information received/retrieved from theuser device.

When an agent receives the user's mobile phone number from the system100, he or she can also infer the user's location based on the system'slocation, as the agent knows that the user's mobile phone is within arange of the system 100. Knowing the user's location, the agent may alsobe able to infer the user's customer service context. For example, if anagent in a retail environment receives a user's mobile phone number froma customer service terminal located in the tools aisle, the agent may beable to infer that the user's service inquiry is related to tools. Theinferred context information can include a topic, a product, a question,a status, a degree of urgency, an intent, a setting, a circumstance, asubject, a question complexity, an expectation, an activity, etc. Thisinformation can help direct the user's customer service inquiry to theproper agent, and provide the agent with background and/or relevantinformation regarding the user's customer service inquiry.

The service transaction between the customer service representative andthe user will typically include a telephone call (e.g., an IP telephonycall and/or analog call connected through one or more IP phone, analogphone, and/or cellular or other wireless telephone networks). However,the customer service representative can also communicate with the userthrough other messaging protocols, such as instant messaging, textmessaging, electronic mail messaging (e-mail), etc.

Embodiments within the scope of the present disclosure may also includetangible and/or non-transitory computer-readable storage media forcarrying or having computer-executable instructions or data structuresstored thereon. Such tangible computer-readable storage media can be anyavailable media that can be accessed by a general purpose or specialpurpose computer, including the functional design of any special purposeprocessor as described above. By way of example, and not limitation,such tangible computer-readable media can include RAM, ROM, EEPROM,CD-ROM or other optical disk storage, magnetic disk storage or othermagnetic storage devices, or any other medium which can be used to carryor store desired program code means in the form of computer-executableinstructions, data structures, or processor chip design. Wheninformation is transferred or provided over a network or anothercommunications connection (either hardwired, wireless, or combinationthereof) to a computer, the computer properly views the connection as acomputer-readable medium. Thus, any such connection is properly termed acomputer-readable medium. Combinations of the above should also beincluded within the scope of the computer-readable media.

Computer-executable instructions include, for example, instructions anddata which cause a general purpose computer, special purpose computer,or special purpose processing device to perform a certain function orgroup of functions. Computer-executable instructions also includeprogram modules that are executed by computers in stand-alone or networkenvironments. Generally, program modules include routines, programs,components, data structures, objects, and the functions inherent in thedesign of special-purpose processors, etc. that perform particular tasksor implement particular abstract data types. Computer-executableinstructions, associated data structures, and program modules representexamples of the program code means for executing steps of the methodsdisclosed herein. The particular sequence of such executableinstructions or associated data structures represents examples ofcorresponding acts for implementing the functions described in suchsteps.

Other embodiments of the disclosure may be practiced in networkcomputing environments with many types of computer systemconfigurations, including personal computers, hand-held devices,multi-processor systems, microprocessor-based or programmable consumerelectronics, network PCs, minicomputers, mainframe computers, and thelike. Embodiments may also be practiced in distributed computingenvironments where tasks are performed by local and remote processingdevices that are linked (either by hardwired links, wireless links, orby a combination thereof) through a communications network. In adistributed computing environment, program modules may be located inboth local and remote memory storage devices.

The various embodiments described above are provided by way ofillustration only and should not be construed to limit the scope of thedisclosure. Various modifications and changes may be made to theprinciples described herein without following the example embodimentsand applications illustrated and described herein, and without departingfrom the spirit and scope of the disclosure. Claim language reciting “atleast one of” a set indicates that one member of the set or multiplemembers of the set satisfy the claim. Tangible computer-readable storagemedia, computer-readable storage devices, or computer-readable memorydevices, expressly exclude media such as transitory waves, energy,carrier signals, electromagnetic waves, and signals per se.

I claim:
 1. A method comprising: receiving, from a user device, contactinformation associated with the user device, wherein the contactinformation is received via a customer service terminal having aninterface configured to wirelessly receive data from the user devicewhen the user device is within a distance of the customer serviceterminal; in response to receiving the contact information, identifyinga customer service representative associated with the customer serviceterminal; and sending the contact information to a remote deviceassociated with the customer service representative.
 2. The method ofclaim 1, wherein the customer service terminal receives the contactinformation from the user device using near field communication, andwherein the user interface is configured to wirelessly receive the datavia near field communication.
 3. The method of claim 1, whereinreceiving the contact information from the user device comprisesextracting the contact information from a machine-readable code at theuser device, and wherein the interface is configured to wirelesslyreceive the data by extracting the data from the machine-readable codeat the user device.
 4. The method of claim 1, wherein the user devicecomprises a mobile phone, and wherein the contact information comprisesa phone number.
 5. The method of claim 1, further comprisingestablishing a communication between the remote device and the userdevice.
 6. The method of claim 1, further comprising sending, to theremote device, a location associated with the user device.
 7. The methodof claim 1, further comprising identifying a customer service contextbased on the location associated with the user device.
 8. The method ofclaim 1, further comprising providing a user associated with the userdevice access to the customer service terminal, wherein the customerservice terminal enables the user to initiate a customer service requestfrom the user to the customer service representative, the userinitiating the customer service request by at least one of moving theuser device within the distance of the customer service terminal andallowing the user device to share the contact information with thecustomer service terminal.
 9. The method of claim 1, wherein thedistance comprises a wireless range of a communication protocol used towirelessly exchange data.
 10. The method of claim 1, wherein the userdevice comprises a tablet computer and wherein the contact informationcomprises an address.
 11. A system comprising: a processor; and acomputer-readable storage medium having stored therein instructionswhich, when executed by the processor, cause the processor to performoperations comprising: receiving, from a user device, contactinformation associated with the user device, wherein the contactinformation is received via a customer service terminal having aninterface configured to wirelessly receive data from the user devicewhen the user device is within a distance of the customer serviceterminal; in response to receiving the contact information, identifyinga customer service representative associated with the customer serviceterminal; and sending the contact information to a remote deviceassociated with the customer service representative.
 12. The system ofclaim 11, wherein the customer service terminal receives the contactinformation from the user device using near field communication, andwherein the interface is configured to wirelessly receive the data vianear field communication.
 13. The system of claim 11, wherein the userdevice comprises a mobile phone and the contact information comprises aphone number, the computer-readable storage medium storing additionalinstructions which, when executed by the processor, result in operationsfurther comprising establishing a communication between the remotedevice and the user device.
 14. The system of claim 11, wherein thedistance comprises a wireless range of a communication protocol used towirelessly exchange data.
 15. The system of claim 11, thecomputer-readable storage medium storing additional instructions which,when executed by the processor, result in operations further comprisingproviding a user associated with the user device access to the customerservice terminal, wherein the customer service terminal enables the userto initiate a customer service request from the user to the customerservice representative, the user initiating the customer service requestby at least one of moving the user device within the distance of thecustomer service terminal and allowing the user device to share thecontact information with the customer service terminal.
 16. The systemof claim 11, the computer-readable storage medium storing additionalinstructions which, when executed by the processor, result in operationsfurther comprising: sending, to the remote device, a location associatedwith the user device; and identifying a customer service context basedon the location associated with the user device.
 17. A computer-readablestorage device having stored therein instructions which, when executedby a processor, cause the processor to perform operations comprising:receiving, from a user device, contact information associated with theuser device, wherein the contact information is received via a customerservice terminal having an interface configured to wirelessly receivedata from the user device when the user device is within a distance ofthe customer service terminal; in response to receiving the contactinformation, identifying a customer service representative associatedwith the customer service terminal; and sending the contact informationto a remote device associated with the customer service representative.18. The computer-readable storage device of claim 17, wherein the userdevice comprises a mobile phone and the contact information comprises aphone number, and wherein the distance comprises a wireless range of acommunication protocol used to wirelessly exchange data, thecomputer-readable storage medium storing additional instructions which,when executed by the processor, result in operations further comprisingestablishing a communication between the remote device and the userdevice.
 19. The computer-readable storage device of claim 17, whereinreceiving the contact information from the user device comprisesextracting the contact information from a machine-readable code at theuser device, and wherein the interface is configured to wirelesslyreceive the data by extracting the data from the machine-readable codeat the user device.
 20. The computer-readable storage device of claim17, the computer-readable storage medium storing additional instructionswhich, when executed by the processor, result in operations furthercomprising: providing a user associated with the user device access tothe customer service terminal, wherein the customer service terminalenables the user to initiate a customer service request from the user tothe customer service representative, the user initiating the customerservice request by at least one of moving the user device within thedistance of the customer service terminal and allowing the user deviceto share the contact information with the customer service terminal;sending, to the remote device, a location associated with the userdevice; and identifying a customer service context based on the locationassociated with the user device.